package com.material.vtool.service;

import com.material.vtool.entity.BMaterialTypeInfoEntity;
import com.material.vtool.entity.combinedEntity.CombinedCommonArticleEntity;
import com.material.vtool.entity.combinedEntity.CombinedRecommendArticleEntity;
import com.material.vtool.entity.combinedEntity.HotSearch;

import java.util.List;

public interface MaterialInfoService {
    List<CombinedRecommendArticleEntity> getRecommendArticleByTime(Integer pageNum, Integer pageSize, List<Integer> materialTypeIds);

    int getRecommendArticleByTimeTotal(List<Integer> materialTypeIds);

    List<CombinedRecommendArticleEntity> getRecommendArticle(List<Integer> materialTypeIds);

    List<CombinedCommonArticleEntity> getArticleByMaterialTypeId(Integer pageNum, Integer pageSize, Integer materialTypeId);

    int getArticleByMaterialTypeIdTotal(Integer materialTypeId);

    List<HotSearch> getHotSearch(String miniCode);

    List<CombinedCommonArticleEntity> searchMaterialByKey(Integer pageNum, Integer pageSize, String miniCode, String key);

    int searchMaterialByKeyTotal(String miniCode, String key);

    BMaterialTypeInfoEntity getMaterialTypeByMaterialId(Integer materialId);

    void AsyncTaskSaveMaterialCollectInfo(Integer userId, Integer materialId);

    CombinedCommonArticleEntity getMaterialInfoById(Integer materialId);
}
